package com.xxx.mall.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xxx.mall.dto.PageQuery;
import com.xxx.mall.dto.SpuDTO;
import com.xxx.mall.dto.SpuPageQuery;
import com.xxx.mall.model.Spu;
import com.xxx.mall.vo.PageVO;
import com.xxx.mall.vo.SpuVO;

/**
 * <p>
 * spu信息 服务类
 * </p>
 *
 * @author 邢晨旭
 * @since 2023-11-24
 */
public interface SpuService extends IService<Spu> {

    /**
     * 添加spu
     *
     * @param spuDTO
     */
    void addSpu(SpuDTO spuDTO);

    SpuVO queryBySpuId(Long id);

    /**
     * 更新spu信息
     * @param spuDTO
     */
    void updateSpuInfo(SpuDTO spuDTO);

    void deleteBySpuId(Long id);

    PageVO<SpuVO> pageList(PageQuery pageQuery, SpuPageQuery spuPageQuery);

    /**
     * 修改spu状态
     * @param id
     * @param status
     */
    void changeStatus(Long id, Integer status);
}
